package com.dragon.modules.yuegou.entity.product;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.product.CoupTemplateType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;

/**
 * 商品券模板实体类<br>
 * 对应的表为：pro_coup_template<br>
 *
 * @author pbuilder generated
 * @date 2021-05-19 17:18:43
 * @company sgy
 * @version 2.0
 */
@TableName("pro_coup_template")
@ApiModel(description = "商品券模板")
public class CoupTemplateEntity  {

	/** 模板ID */
	@ApiModelProperty("模板ID")
	protected String id;

	/** 商圈ID */
	@ApiModelProperty("商圈ID")
	protected String busdId;

	/** 商品券名称 */
	@ApiModelProperty("商品券名称")
	protected String title;

	/** 名称备注 */
	@ApiModelProperty("名称备注")
	protected String titleRemark;

	/** 发放量 */
	@ApiModelProperty("发放量")
	protected Integer granted;

	/** [枚举]商品类型：0-平台实物-PLATFORM、1-商户实物-MERCHANT */
	@ApiModelProperty("[枚举]商品类型：0-平台实物-PLATFORM、1-商户实物-MERCHANT")
	protected CoupTemplateType type;

	/** 活动状态：0-启用-START、1-停用-OVER */
	@ApiModelProperty("活动状态：0-启用-START、1-停用-OVER")
	protected Boolean openType;

	/** 使用说明 */
	@ApiModelProperty("使用说明")
	protected String remark;

	/** 总库存 */
	@ApiModelProperty("总库存")
	protected Integer stockTotal;

	/** 库存剩余 */
	@ApiModelProperty("库存剩余")
	protected Integer stockSurplus;

	/** 版本 */
	@ApiModelProperty("版本")
	protected Integer version;

	/** 创建者 */
	@ApiModelProperty("创建者")
	protected String createdBy;

	/** 创建时间 */
	@ApiModelProperty("创建时间")
	protected LocalDateTime createdTime;

	/** 修改人 */
	@ApiModelProperty("修改人")
	protected String modifiedBy;

	/** 修改时间 */
	@ApiModelProperty("修改时间")
	protected LocalDateTime modifiedTime;

	/** 是否删除（1：已删除，0：未删除） */
	@ApiModelProperty("是否删除（1：已删除，0：未删除）")
	protected Boolean del;

	/** 删除人 */
	@ApiModelProperty("删除人")
	protected String delBy;

	/** 删除时间 */
	@ApiModelProperty("删除时间")
	protected LocalDateTime delTime;

	/**
	 * 构造一个空商品券模板实体对象
	 */
	public CoupTemplateEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个商品券模板实体对象
	 *
	 * @param other 其它对象
	 */
	public CoupTemplateEntity(CoupTemplateEntity other){
		super();
		this.id = other.id;
		this.busdId = other.busdId;
		this.title = other.title;
		this.titleRemark = other.titleRemark;
		this.granted = other.granted;
		this.type = other.type;
		this.openType = other.openType;
		this.remark = other.remark;
		this.stockTotal = other.stockTotal;
		this.stockSurplus = other.stockSurplus;
		this.version = other.version;
		this.createdBy = other.createdBy;
		this.createdTime = other.createdTime;
		this.modifiedBy = other.modifiedBy;
		this.modifiedTime = other.modifiedTime;
		this.del = other.del;
		this.delBy = other.delBy;
		this.delTime = other.delTime;
	}


	/**
	 * 获取模板ID
	 *
	 * @return id 模板ID
	 */
	public String getId() {
		return id;
	}

	/**
	 * 设置模板ID
	 *
	 * @param id 模板ID
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取商圈ID
	 *
	 * @return busdId 商圈ID
	 */
	public String getBusdId() {
		return busdId;
	}

	/**
	 * 设置商圈ID
	 *
	 * @param busdId 商圈ID
	 */
	public void setBusdId(String busdId) {
		this.busdId = busdId;
	}

	/**
	 * 获取商品券名称
	 *
	 * @return title 商品券名称
	 */
	public String getTitle() {
		return title;
	}

	/**
	 * 设置商品券名称
	 *
	 * @param title 商品券名称
	 */
	public void setTitle(String title) {
		this.title = title;
	}

	/**
	 * 获取名称备注
	 *
	 * @return titleRemark 名称备注
	 */
	public String getTitleRemark() {
		return titleRemark;
	}

	/**
	 * 设置名称备注
	 *
	 * @param titleRemark 名称备注
	 */
	public void setTitleRemark(String titleRemark) {
		this.titleRemark = titleRemark;
	}

	/**
	 * 获取发放量
	 *
	 * @return granted 发放量
	 */
	public Integer getGranted() {
		return granted;
	}

	/**
	 * 设置发放量
	 *
	 * @param granted 发放量
	 */
	public void setGranted(Integer granted) {
		this.granted = granted;
	}

	/**
	 * 获取[枚举]商品类型：0-平台实物-PLATFORM、1-商户实物-MERCHANT
	 *
	 * @return type [枚举]商品类型：0-平台实物-PLATFORM、1-商户实物-MERCHANT
	 */
	public CoupTemplateType getType() {
		return type;
	}

	/**
	 * 设置[枚举]商品类型：0-平台实物-PLATFORM、1-商户实物-MERCHANT
	 *
	 * @param type [枚举]商品类型：0-平台实物-PLATFORM、1-商户实物-MERCHANT
	 */
	public void setType(CoupTemplateType type) {
		this.type = type;
	}

	/**
	 * 获取活动状态：0-启用-START、1-停用-OVER
	 *
	 * @return openType 活动状态：0-启用-START、1-停用-OVER
	 */
	public Boolean getOpenType() {
		return openType;
	}

	/**
	 * 设置活动状态：0-启用-START、1-停用-OVER
	 *
	 * @param openType 活动状态：0-启用-START、1-停用-OVER
	 */
	public void setOpenType(Boolean openType) {
		this.openType = openType;
	}

	/**
	 * 获取使用说明
	 *
	 * @return remark 使用说明
	 */
	public String getRemark() {
		return remark;
	}

	/**
	 * 设置使用说明
	 *
	 * @param remark 使用说明
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}

	/**
	 * 获取总库存
	 *
	 * @return stockTotal 总库存
	 */
	public Integer getStockTotal() {
		return stockTotal;
	}

	/**
	 * 设置总库存
	 *
	 * @param stockTotal 总库存
	 */
	public void setStockTotal(Integer stockTotal) {
		this.stockTotal = stockTotal;
	}

	/**
	 * 获取库存剩余
	 *
	 * @return stockSurplus 库存剩余
	 */
	public Integer getStockSurplus() {
		return stockSurplus;
	}

	/**
	 * 设置库存剩余
	 *
	 * @param stockSurplus 库存剩余
	 */
	public void setStockSurplus(Integer stockSurplus) {
		this.stockSurplus = stockSurplus;
	}

	/**
	 * 获取版本
	 *
	 * @return version 版本
	 */
	public Integer getVersion() {
		return version;
	}

	/**
	 * 设置版本
	 *
	 * @param version 版本
	 */
	public void setVersion(Integer version) {
		this.version = version;
	}

	/**
	 * 获取创建者
	 *
	 * @return createdBy 创建者
	 */
	public String getCreatedBy() {
		return createdBy;
	}

	/**
	 * 设置创建者
	 *
	 * @param createdBy 创建者
	 */
	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	/**
	 * 获取创建时间
	 *
	 * @return createdTime 创建时间
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}

	/**
	 * 设置创建时间
	 *
	 * @param createdTime 创建时间
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取修改人
	 *
	 * @return modifiedBy 修改人
	 */
	public String getModifiedBy() {
		return modifiedBy;
	}

	/**
	 * 设置修改人
	 *
	 * @param modifiedBy 修改人
	 */
	public void setModifiedBy(String modifiedBy) {
		this.modifiedBy = modifiedBy;
	}

	/**
	 * 获取修改时间
	 *
	 * @return modifiedTime 修改时间
	 */
	public LocalDateTime getModifiedTime() {
		return modifiedTime;
	}

	/**
	 * 设置修改时间
	 *
	 * @param modifiedTime 修改时间
	 */
	public void setModifiedTime(LocalDateTime modifiedTime) {
		this.modifiedTime = modifiedTime;
	}

	/**
	 * 获取是否删除（1：已删除，0：未删除）
	 *
	 * @return del 是否删除（1：已删除，0：未删除）
	 */
	public Boolean getDel() {
		return del;
	}

	/**
	 * 设置是否删除（1：已删除，0：未删除）
	 *
	 * @param del 是否删除（1：已删除，0：未删除）
	 */
	public void setDel(Boolean del) {
		this.del = del;
	}

	/**
	 * 获取删除人
	 *
	 * @return delBy 删除人
	 */
	public String getDelBy() {
		return delBy;
	}

	/**
	 * 设置删除人
	 *
	 * @param delBy 删除人
	 */
	public void setDelBy(String delBy) {
		this.delBy = delBy;
	}

	/**
	 * 获取删除时间
	 *
	 * @return delTime 删除时间
	 */
	public LocalDateTime getDelTime() {
		return delTime;
	}

	/**
	 * 设置删除时间
	 *
	 * @param delTime 删除时间
	 */
	public void setDelTime(LocalDateTime delTime) {
		this.delTime = delTime;
	}

	public String toString() {
		return new StringBuilder().append("CoupTemplateEntity{").
				append("id=").append(id).
				append(",busdId=").append(busdId).
				append(",title=").append(title).
				append(",titleRemark=").append(titleRemark).
				append(",granted=").append(granted).
				append(",type=").append(type).
				append(",openType=").append(openType).
				append(",remark=").append(remark).
				append(",stockTotal=").append(stockTotal).
				append(",stockSurplus=").append(stockSurplus).
				append(",version=").append(version).
				append(",createdBy=").append(createdBy).
				append(",createdTime=").append(createdTime).
				append(",modifiedBy=").append(modifiedBy).
				append(",modifiedTime=").append(modifiedTime).
				append(",del=").append(del).
				append(",delBy=").append(delBy).
				append(",delTime=").append(delTime).
				append('}').toString();
	}

	/**
	 * 复制对象
	 *
	 * @return 复制后的新实体对象
	 */
	public CoupTemplateEntity copy() {
		return new CoupTemplateEntity(this);
	}

	/** 模板ID */
	public static final String COL_ID = "id";

	/** 商圈ID */
	public static final String COL_BUSD_ID = "busd_id";

	/** 商品券名称 */
	public static final String COL_TITLE = "title";

	/** 名称备注 */
	public static final String COL_TITLE_REMARK = "title_remark";

	/** 发放量 */
	public static final String COL_GRANTED = "granted";

	/** [枚举]商品类型：0-平台实物-PLATFORM、1-商户实物-MERCHANT */
	public static final String COL_TYPE = "type";

	/** 活动状态：0-启用-START、1-停用-OVER */
	public static final String COL_OPEN_TYPE = "open_type";

	/** 使用说明 */
	public static final String COL_REMARK = "remark";

	/** 总库存 */
	public static final String COL_STOCK_TOTAL = "stock_total";

	/** 库存剩余 */
	public static final String COL_STOCK_SURPLUS = "stock_surplus";

	/** 版本 */
	public static final String COL_VERSION = "version";

	/** 创建者 */
	public static final String COL_CREATED_BY = "created_by";

	/** 创建时间 */
	public static final String COL_CREATED_TIME = "created_time";

	/** 修改人 */
	public static final String COL_MODIFIED_BY = "modified_by";

	/** 修改时间 */
	public static final String COL_MODIFIED_TIME = "modified_time";

	/** 是否删除（1：已删除，0：未删除） */
	public static final String COL_DEL = "del";

	/** 删除人 */
	public static final String COL_DEL_BY = "del_by";

	/** 删除时间 */
	public static final String COL_DEL_TIME = "del_time";
}
